2009-11-07 20:26:00
如题,想进行带模板参数的 typedef,如:
1template <typename T>
2typedef RBTree<T> Set<T>;
3
4template <typename T>
5typedef Set<List<T>> MultiSet<T>;
6
7template <typename K, typename V>
8typedef Set<Pair<K, V>> Map<K, V>;
9
10template <typename K, typename V>
11typedef Map<K, List<V>> MultiMap<K, V>;
却无这种语法。
目前能想到的就是
1template <typename T>
2class Set : public RBTree<T>
3{
4};
5
6template <typename T>
7class MultiSet : public Set<List<T>>
8{
9};
10
11template <typename K, typename V>
12class Map : public Set<Pair<K, V>>
13{
14};
15
16template <typename K, typename V>
17class MultiMap : public Map<K, List<V>>
18{
19};
不知有没有更好的方法?
首发:http://www.cppblog.com/Streamlet/archive/2009/11/07/100351.html